// lib/controllers/person_detail_controller.dart
import 'package:chat/model/friend_model.dart';
import 'package:flutter/material.dart';
import 'package:get/get.dart';

class FriendDetailController extends GetxController {
  final Rx<Friend?> personDetail = Rx<Friend?>(null);

  @override
  void onInit() {
    super.onInit();
    loadPersonDetail();
  }

  void loadPersonDetail() {
    personDetail.value = Friend(
      tagIndex: "",
      name: 'seth.eth',
      avatarUrl: 'assets/images/zh-CN-XiaochenNeural.png',
      ethAddress: '0x742d35Cc6634C0532925a3b844Bc454e4438f44e',
      membership: 'FPO 金牌会员',
      ppcInfo: 'PPC接待',
      hertInfo: 'hert相关信息',
      rfgBalance: 4556567.3240,
      socialScore: 4556567.3240,
      spaceNFTs: {'3a': 3, '2v': 2},
      resourceNFTs: {'3a': 3, '2v': 2},
    );
  }

  void startChat() {
    // 跳转到聊天页面
    Get.toNamed('/friendChatScreen');
  }

  void voiceCall() {
    // 发起语音通话
    Get.snackbar('提示', '正在发起语音通话');
  }

  void setRemark() {
    // 设置备注
    Get.defaultDialog(
      title: '设置备注和描述',
      content: const TextField(decoration: InputDecoration(hintText: '请输入备注信息')),
      textConfirm: '确认',
      textCancel: '取消',
      onConfirm: () {
        Get.back();
        Get.snackbar('提示', '备注设置成功');
      },
    );
  }

  void deleteContact() {
    // 删除联系人
    Get.defaultDialog(
      title: '删除联系人',
      middleText: '确定要删除此联系人吗？',
      textConfirm: '删除',
      textCancel: '取消',
      confirmTextColor: Colors.white,
      buttonColor: Colors.red,
      onConfirm: () {
        Get.back();
        Get.back();
        Get.snackbar('提示', '联系人已删除');
      },
    );
  }

  void addToBlacklist() {
    // 加入黑名单
    Get.defaultDialog(
      title: '加入黑名单',
      middleText: '确定要将此联系人加入黑名单吗？',
      textConfirm: '加入',
      textCancel: '取消',
      confirmTextColor: Colors.white,
      buttonColor: Colors.red,
      onConfirm: () {
        Get.back();
        Get.snackbar('提示', '已加入黑名单');
      },
    );
  }
}
